package com.stars.base.entity;

import com.stars.module.user.entity.StarUser;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;

/**
 * @author : Rocks
 * @version : 1.0
 * @date : 2022/11/19 15:52
 * @description : 处理Session用户
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
public class SessionUser implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 用户ID
     */
    private String userId;
    /**
     * 用户名称
     */
    private String userName;
    /**
     * 用户类型
     */
    private String userType;
    /**
     * 用户主部门ID
     */
    private String currentDept;
    /**
     * 用户主部门的名称
     */
    private String currentDeptName;
    /**
     * 用户所处的机构
     */
    private String currentUnit;
    /**
     * 用户所处机构名称
     */
    private String currentUnitName;
    /**
     * 用户JWT认证token
     */
    private String token;
    /**
     * 用户所有角色
     */
    private String roles;
    /**
     * 用户所有权限
     */
    private String privileges;

    public SessionUser(StarUser user){
        this.userId = user.getId();
        this.userName = user.getName();
        this.userType = user.getUserType();
    }
}
